home *** CD-ROM | disk | FTP | other *** search
- 40 PRINT"[147]"TAB(9)"[144]DIRECTORY MANIPULATOR[159]"
- 50 PRINTTAB(5)"INSERT DISKETTE TO MANIPULATE":GOSUB1430
- 60 DIMF$(144):FORI=1TO11:FL$=FL$+CHR$(0):NEXT:TY$=CHR$(131)+CHR$(18)+CHR$(0)
- 70 DIMS%(18):S%(1)=1:FORI=1TO17
- 80 IFI=6THENS%(I+1)=2:NEXT
- 90 IFI=12THENS%(I+1)=3:NEXT
- 100 S%(I+1)=S%(I)+3:NEXT
- 110 T=18:S=1:N=1:OK=0
- 120 SP$="":FORI=1TO16:SP$=SP$+CHR$(160):NEXT
- 160 OPEN15,8,15,"I0":GOSUB1550
- 170 PRINTTAB(12)" DISK UNIT OK !"
- 210 OPEN2,8,2,"#"
- 220 PRINT#15,"U1";2;0;T;S
- 230 GOSUB1550
- 240 GET#2,T$,S$
- 250 T=ASC(T$+CHR$(0)):S=ASC(S$+CHR$(0))
- 260 FORI=1TO8
- 270 F$="":FORX=1TO30
- 280 GET#2,B$:B=ASC(B$+CHR$(0)):IFX=1THENA=B
- 290 IFX=4THENC=B
- 300 F$=F$+CHR$(B):NEXTX
- 310 IFA<>0OR(A=0ANDC=160)THENF$(N)=F$:N=N+1
- 320 GET#2,B$,B$:NEXTI
- 330 IFT<>0THEN220
- 370 Z=1:OD=0:P1=20:PG=P1:X=INT((N-1)/2)+1:IF(N-1)-(2*(X-1))=1THENX=X+1:OD=1
- 380 XX=X-1:PC=INT(XX/PG):IF(XX/PG)-PC<>0THENPC=PC+1
- 390 IFXX>PGTHENX=PG+1
- 400 FORI=1TOXX:PRINT"[144]"RIGHT$(STR$(Z),2)"[159]";MID$(F$(Z),4,16):Z=Z+1
- 410 IFOD=0OR(OD=1AND2*XX<>X)THENPRINTTAB(19)"[145][144]"RIGHT$(STR$(X),2)"[159]";MID$(F$(X),4,16):X=X+1
- 420 IFINT(I/PG)=1ANDPC>=2THENPG=PG+P1:GOSUB1430:PC=PC-1:GOTO440
- 430 GOTO460
- 440 Z=X:IFPC=>2THENX=Z+P1
- 450 IFPC=1THENX=INT(((2*XX)-(2*I))/2)+Z
- 460 NEXTI
- 470 CLOSE15:CLOSE2
- 510 PRINT:PRINT"DIRECTORY OK (Y/N)";:INPUT"N[157][157][157]";OK$
- 520 IFOK$<>"Y"ANDOK$<>"N"THENPRINT"[145][145][145]":GOTO510
- 530 IFOK$="Y"ANDOK=0THENGOTO1660
- 540 IFOK$="Y"ANDOK=1THENGOTO730
- 580 PRINT"SELECT DIRECTORY MANIPULATION COMMAND"
- 590 GETCM$:IFCM$=""THEN590
- 600 IFCM$="[133]"THENPRINT"RE-LIST DIRECTORY":GOTO370
- 610 IFCM$="H"THENGOSUB1340:GOTO370
- 620 OK=1:IFCM$="[137]"THENPRINT"ALPHABATIZE DIRECTORY":GOSUB920:GOTO370
- 630 IFCM$="[134]"THENPRINT"INSERT BLANK ENTRY":GOSUB1010:GOTO370
- 640 IFCM$="[138]"THENPRINT"DELETE BLANK ENTRIES":GOSUB1050:GOTO370
- 650 IFCM$="[135]"THENPRINT"INSERT-----[146] ENTRY":GOSUB1130:GOTO370
- 660 IFCM$="[139]"THENPRINT"INSERT 'REMARK' ENTRY":GOSUB1170:GOTO370
- 670 IFCM$="[136]"THENPRINT"SWAP DIRECTORY ENTRIES":GOSUB1230:GOTO370
- 680 IFCM$="[140]"THENPRINT"DELETE DIRECTORY ENTRY":GOSUB1280:GOTO370
- 685 IFCM$="[137]"THENSYS64738
- 690 PRINT"[147]":GOTO580
- 730 PRINT"[147] WRITING NEW DIRECTORY...PLEASE WAIT![146]"
- 740 F$="":FORI=1TO32:F$=F$+CHR$(0):NEXTI
- 750 OPEN15,8,15,"I0":GOSUB1550
- 760 PRINTTAB(12)" DISK UNIT OK !"
- 770 OPEN2,8,2,"#":X=INT((N-1)/8):XX=0:IF((N-1)/8)-X<>0THENX=X+1
- 780 FORI=1TOX:PRINT#15,"B-P:";2;0
- 790 T=18:IFI=XTHENT=0
- 800 PRINT#2,CHR$(T);CHR$(S%(I+1));
- 810 FORZ=1TO8:XX=XX+1
- 820 IFXX=>NTHENPRINT#2,F$;:GOTO850
- 830 PRINT#2,F$(XX);
- 840 IFZ<>8ANDXX<>(N-1)THENPRINT#2,"SG";
- 850 NEXTZ
- 860 PRINT#15,"U2:";2;0;18;S%(I)
- 870 PRINT"WRITING TRACK 18 SECTOR"STR$(S%(I))
- 880 NEXTI:CLOSE2:CLOSE15:GOTO1660
- 920 X=N
- 930 X=INT(X/2):IFX=0THENRETURN
- 940 FORI=1TO((N-1)-X):Y=I
- 950 Z=Y+X:IFMID$(F$(Y),4,16)<=MID$(F$(Z),4,16)THEN970
- 960 FF$=F$(Y):F$(Y)=F$(Z):F$(Z)=FF$:Y=Y-X:IFY>0THEN950
- 970 NEXT:GOTO930
- 1010 GOSUB1490:F$(BL)=CHR$(0)+CHR$(0)+CHR$(0)+SP$+FL$:RETURN
- 1050 FORI=1TON-1:IFASC(F$(I))=0THEN1070
- 1060 NEXT:RETURN
- 1070 FORX=BLTON-1
- 1080 IFBL<N-1THENF$(X)=F$(X+1)
- 1090 NEXT:N=N-1:GOTO1050
- 1130 GOSUB1490:F$(BL)=TY$+"----------------"+FL$:RETURN
- 1170 GOSUB1490:PRINT"ENTER REMARK:";:INPUTRM$:IFLEN(RM$)>16THEN1170
- 1180 IFLEN(RM$)<16THENFORI=1TO(16-LEN(RM$)):RM$=RM$+CHR$(160):NEXT
- 1190 F$(BL)=TY$+RM$+FL$:RETURN
- 1230 PRINT"1ST ";:GOSUB1490:A=BL:PRINT"2ND ";:GOSUB1490:F$(B)=F$(A):F$(A)=F$(BL)
- 1240 F$(BL)=F$(B):RETURN
- 1280 GOSUB1490:FORX=BLTON-1
- 1290 IFBL<N-1THENF$(X)=F$(X+1)
- 1300 NEXT:N=N-1:RETURN
- 1340 PRINT"[147] DIRECTORY MANIPULATOR HELP MENU"
- 1350 PRINT" F1 -> RE-LIST DIRECTORY":PRINT" F2 -> ALPHABATIZE DIRECTORY"
- 1360 PRINT" F3 -> INSERT BLANK ENTRY":PRINT" F4 -> DELETE BLANK ENTRIES"
- 1370 PRINT" F5 -> INSERT -----[146] ENTRY":PRINT" F6 -> INSERT 'REMARK' ENTRY"
- 1380 PRINT" F7 -> SWAP DIRECTORY ENTRIES":PRINT" F8 -> DELETE DIRECTORY ENTRY"
- 1385 PRINT"***DELETED ENTRY IS NON-RECOVERABLE***"
- 1390 GOSUB1430:RETURN
- 1430 PRINT:PRINTTAB(13)"HIT ANY KEY!!!"
- 1440 GETCK$:IFCK$=""THEN1440
- 1450 RETURN
- 1490 PRINT"LOCATION OF ENTRY:0[157][157][157]";:INPUTBL:IFBL>N-1ORBL<1THENPRINT"[145][145]":GOTO1490
- 1500 IFCM$="[136]"ORCM$="[140]"THEN RETURN
- 1510 N=N+1:FORI=N-1TOBL+1STEP-1:F$(I)=F$(I-1):NEXT:RETURN
- 1550 INPUT#15,EN,EM$,ET,ES:IFEN<>0THENGOTO1600
- 1560 RETURN
- 1600 PRINT"[147]"TAB(12)"DISK UNIT ERROR!"
- 1610 PRINT"ERROR # -"EN"[157]; TRACK -"ET"[157]; SECTOR -"SE
- 1620 PRINT"ERROR MESSAGE - "EM$:END
- 1660 PRINT"[147]MANIPULATE ANOTHER DISKETTE (Y/N)";:INPUT"N[157][157][157]";AN$
- 1670 IFAN$<>"Y"ANDAN$<>"N"THEN1660
- 1680 PRINT"DISKETTE BEING VALIDATED":OPEN15,8,15:PRINT#15,"V":PRINT#15,"I":CLOSE15
- 1690 IFAN$="Y"THENRUN
- 1700 END
-